msort1(nil) -> nil
msort1(.2(x, y)) -> .2(min2(x, y), msort1(del2(min2(x, y), .2(x, y))))
min2(x, nil) -> x
min2(x, .2(y, z)) -> if3(<=2(x, y), min2(x, z), min2(y, z))
del2(x, nil) -> nil
del2(x, .2(y, z)) -> if3(=2(x, y), z, .2(y, del2(x, z)))
↳ QTRS
↳ DependencyPairsProof
msort1(nil) -> nil
msort1(.2(x, y)) -> .2(min2(x, y), msort1(del2(min2(x, y), .2(x, y))))
min2(x, nil) -> x
min2(x, .2(y, z)) -> if3(<=2(x, y), min2(x, z), min2(y, z))
del2(x, nil) -> nil
del2(x, .2(y, z)) -> if3(=2(x, y), z, .2(y, del2(x, z)))
MIN2(x, .2(y, z)) -> MIN2(y, z)
DEL2(x, .2(y, z)) -> DEL2(x, z)
MSORT1(.2(x, y)) -> DEL2(min2(x, y), .2(x, y))
MSORT1(.2(x, y)) -> MIN2(x, y)
MSORT1(.2(x, y)) -> MSORT1(del2(min2(x, y), .2(x, y)))
MIN2(x, .2(y, z)) -> MIN2(x, z)
msort1(nil) -> nil
msort1(.2(x, y)) -> .2(min2(x, y), msort1(del2(min2(x, y), .2(x, y))))
min2(x, nil) -> x
min2(x, .2(y, z)) -> if3(<=2(x, y), min2(x, z), min2(y, z))
del2(x, nil) -> nil
del2(x, .2(y, z)) -> if3(=2(x, y), z, .2(y, del2(x, z)))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
MIN2(x, .2(y, z)) -> MIN2(y, z)
DEL2(x, .2(y, z)) -> DEL2(x, z)
MSORT1(.2(x, y)) -> DEL2(min2(x, y), .2(x, y))
MSORT1(.2(x, y)) -> MIN2(x, y)
MSORT1(.2(x, y)) -> MSORT1(del2(min2(x, y), .2(x, y)))
MIN2(x, .2(y, z)) -> MIN2(x, z)
msort1(nil) -> nil
msort1(.2(x, y)) -> .2(min2(x, y), msort1(del2(min2(x, y), .2(x, y))))
min2(x, nil) -> x
min2(x, .2(y, z)) -> if3(<=2(x, y), min2(x, z), min2(y, z))
del2(x, nil) -> nil
del2(x, .2(y, z)) -> if3(=2(x, y), z, .2(y, del2(x, z)))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ QDP
DEL2(x, .2(y, z)) -> DEL2(x, z)
msort1(nil) -> nil
msort1(.2(x, y)) -> .2(min2(x, y), msort1(del2(min2(x, y), .2(x, y))))
min2(x, nil) -> x
min2(x, .2(y, z)) -> if3(<=2(x, y), min2(x, z), min2(y, z))
del2(x, nil) -> nil
del2(x, .2(y, z)) -> if3(=2(x, y), z, .2(y, del2(x, z)))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
DEL2(x, .2(y, z)) -> DEL2(x, z)
POL( DEL2(x1, x2) ) = max{0, x2 - 2}
POL( .2(x1, x2) ) = x2 + 3
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
↳ QDP
↳ QDP
msort1(nil) -> nil
msort1(.2(x, y)) -> .2(min2(x, y), msort1(del2(min2(x, y), .2(x, y))))
min2(x, nil) -> x
min2(x, .2(y, z)) -> if3(<=2(x, y), min2(x, z), min2(y, z))
del2(x, nil) -> nil
del2(x, .2(y, z)) -> if3(=2(x, y), z, .2(y, del2(x, z)))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
MIN2(x, .2(y, z)) -> MIN2(y, z)
MIN2(x, .2(y, z)) -> MIN2(x, z)
msort1(nil) -> nil
msort1(.2(x, y)) -> .2(min2(x, y), msort1(del2(min2(x, y), .2(x, y))))
min2(x, nil) -> x
min2(x, .2(y, z)) -> if3(<=2(x, y), min2(x, z), min2(y, z))
del2(x, nil) -> nil
del2(x, .2(y, z)) -> if3(=2(x, y), z, .2(y, del2(x, z)))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
MIN2(x, .2(y, z)) -> MIN2(y, z)
MIN2(x, .2(y, z)) -> MIN2(x, z)
POL( MIN2(x1, x2) ) = max{0, x2 - 2}
POL( .2(x1, x2) ) = x2 + 3
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
↳ QDP
msort1(nil) -> nil
msort1(.2(x, y)) -> .2(min2(x, y), msort1(del2(min2(x, y), .2(x, y))))
min2(x, nil) -> x
min2(x, .2(y, z)) -> if3(<=2(x, y), min2(x, z), min2(y, z))
del2(x, nil) -> nil
del2(x, .2(y, z)) -> if3(=2(x, y), z, .2(y, del2(x, z)))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDPOrderProof
MSORT1(.2(x, y)) -> MSORT1(del2(min2(x, y), .2(x, y)))
msort1(nil) -> nil
msort1(.2(x, y)) -> .2(min2(x, y), msort1(del2(min2(x, y), .2(x, y))))
min2(x, nil) -> x
min2(x, .2(y, z)) -> if3(<=2(x, y), min2(x, z), min2(y, z))
del2(x, nil) -> nil
del2(x, .2(y, z)) -> if3(=2(x, y), z, .2(y, del2(x, z)))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
MSORT1(.2(x, y)) -> MSORT1(del2(min2(x, y), .2(x, y)))
POL( MSORT1(x1) ) = max{0, x1 - 2}
POL( .2(x1, x2) ) = 3
POL( del2(x1, x2) ) = 0
POL( if3(x1, ..., x3) ) = 0
del2(x, .2(y, z)) -> if3(=2(x, y), z, .2(y, del2(x, z)))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
msort1(nil) -> nil
msort1(.2(x, y)) -> .2(min2(x, y), msort1(del2(min2(x, y), .2(x, y))))
min2(x, nil) -> x
min2(x, .2(y, z)) -> if3(<=2(x, y), min2(x, z), min2(y, z))
del2(x, nil) -> nil
del2(x, .2(y, z)) -> if3(=2(x, y), z, .2(y, del2(x, z)))